package com.ddwl.schema.vo.wallet;

import com.ddwl.schema.vo.order.OrderSpuVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.math.BigDecimal;
import java.time.Instant;
import java.util.List;

/**
 * 分润金额记录表(Order)返回对象
 *
 * @author zach
 * @since 2020-07-22 13:06:28
 */
@Getter
@Setter
@ApiModel(value = "分销订单")
public class DistOrderVo {

    @ApiModelProperty(value = "主键")     
    private String id;

    @ApiModelProperty(value = "订单号")     
    private String orderId;

    @ApiModelProperty(value = "下单用户ID")
    private String orderUserId;

    @ApiModelProperty(value = "订单金额")     
    private BigDecimal orderPrice;

    @ApiModelProperty(value = "下单原数据")     
    private String source;

    @ApiModelProperty(value = "订单商品信息")     
    private List<OrderSpuVo> orderSpuVos;

    @ApiModelProperty(value = "订单状态 (0已付款 1已收货 2已结算)")
    private Integer orderStatus;

    @ApiModelProperty(value = "订单付款时间")     
    private Instant payTime;

    @ApiModelProperty(value = "订单确认收货时间")     
    private Instant confirmTime;

    @ApiModelProperty(value = "分销员ID")     
    private String distUserId;

    @ApiModelProperty(value = "分销员姓名")
    private String distUserName;

    @ApiModelProperty(value = "分销员电话")
    private String distUserTel;

    @ApiModelProperty(value = "区域合伙人id")     
    private String regionUserId;

    @ApiModelProperty(value = "分润金额")     
    private BigDecimal tradeAmount;

    @ApiModelProperty(value = "分销员分润金额")
    private BigDecimal distAmount;

    @ApiModelProperty(value = "区域经理分润金额")
    private BigDecimal regionAmount;

    @ApiModelProperty(value = "结算时间")     
    private Instant clearingTime;

    @ApiModelProperty(value = "是否售后（0未售后1售后主要代表退货）")     
    private Integer isAfterSale;

    @ApiModelProperty(value = "创建时间")     
    private Instant gmtCreated;

    @ApiModelProperty(value = "修改时间")     
    private Instant gmtModified;

    @ApiModelProperty(value = " 1 个人佣金  2 直接上级佣金  3 间接上级佣金 4 区域经理 5 总代佣金")
    private Integer distType;

    @ApiModelProperty(value = "订单商品")
    private String orderSpu;

    @ApiModelProperty(value = "分销配置类型 0 商品分销 1 门店开业分销")
    private Integer type;
}